home *** CD-ROM | disk | FTP | other *** search
Wrap
on initializeBackground bWidth = 145 repeat with wBG = 1 to 5 wSprite = wBG + 10 set the loc of sprite wSprite to point((bWidth * wBG) - bWidth, 440) end repeat end on updateParalaxBG global playerViewpoint, paralaxBgData bWidth = 145 repeat with wBG = 1 to 5 whichBlock = (((playerViewpoint[1] / 2 / bWidth) + wBG + 10) mod 30) + 1 wSprite = wBG + 10 set the locH of sprite wSprite to (bWidth * wBG) - bWidth - (playerViewpoint[1] / 2 mod bWidth) set the member of sprite wSprite to "Fish BG " & string(paralaxBgData[whichBlock]) end repeat end on initializeScreen global terrainSO, screenDimensions, screenTileSize, playerViewpoint maxX = screenDimensions[1] maxY = screenDimensions[2] viewOff = point(playerViewpoint[1] mod screenTileSize, playerViewpoint[2] mod screenTileSize) wTile = 0 repeat with whichY = 1 to maxY repeat with whichX = 1 to maxX wSprite = terrainSO + wTile puppetSprite(wSprite, 1) set the member of sprite wSprite to "Iron Block" set the loc of sprite wSprite to point((whichX - 1) * screenTileSize, (whichY - 1) * screenTileSize) - viewOff + (screenTileSize / 2) wTile = wTile + 1 end repeat end repeat end on repositionTerrain global terrainSO, screenDimensions, screenTileSize, terrainRef, terrainData_Type, animateTilesFlag, playerViewpoint, animNumber, rumbleOffset viewOff = point(playerViewpoint[1] mod screenTileSize, playerViewpoint[2] mod screenTileSize) tilePointSet = playerViewpoint / screenTileSize maxX = screenDimensions[1] maxY = screenDimensions[2] wTile = 0 repeat with whichY = 1 to maxY repeat with whichX = 1 to maxX wSprite = terrainSO + wTile newXLoc = ((whichX - 1) * screenTileSize) - viewOff[1] + (screenTileSize / 2) newYLoc = ((whichY - 1) * screenTileSize) - viewOff[2] + (screenTileSize / 2) set the locH of sprite wSprite to newXLoc + rumbleOffset[1] set the locV of sprite wSprite to newYLoc + rumbleOffset[2] bType = terrainData_Type[whichY + tilePointSet[2]][whichX + tilePointSet[1]] blockString = terrainRef[bType] wSprite = terrainSO + wTile if count(blockString[1]) = 1 then else if count(blockString[1]) = 1 then set the member of sprite wSprite to blockString[1][1] else if blockString[4] = 1 then frameNum = (animNumber / 3 mod count(blockString[1])) + 1 set the member of sprite wSprite to blockString[1][frameNum] else frameNum = (animNumber mod count(blockString[1])) + 1 set the member of sprite wSprite to blockString[1][frameNum] end if end if end if wTile = wTile + 1 end repeat end repeat end on checkSolidpoint pointLoc global terrainData_Type, screenTileSize, playerViewpoint, terrainRef tilePointSet = (pointLoc / screenTileSize) + 1 if (tilePointSet[2] >= 1) and (tilePointSet[2] <= count(terrainData_Type)) and (tilePointSet[1] >= 1) and (tilePointSet[1] <= count(terrainData_Type[1])) then bType = terrainData_Type[tilePointSet[2]][tilePointSet[1]] else bType = 2 end if return [terrainRef[bType][2], terrainRef[bType][5]] end on punchBlock punchPoint global terrainData_Type, screenTileSize, playerViewpoint, locksOpened, updateTextFields, terrainRef, playerInventory tilePointSet = (punchPoint / screenTileSize) + 1 if (tilePointSet[2] >= 1) and (tilePointSet[2] <= count(terrainData_Type)) and (tilePointSet[1] >= 1) and (tilePointSet[1] <= count(terrainData_Type[1])) then bType = terrainData_Type[tilePointSet[2]][tilePointSet[1]] else bType = 1 end if if (playerInventory[2] > 0) and (terrainRef[bType][5] = 5) then openLockNOW = 1 else openLockNOW = 0 end if tType = terrainRef[bType][5] if (tType = 1) or (tType = 6) or (tType = 7) or (tType = 8) or (tType = 9) or (tType = 12) or (openLockNOW = 1) then playSound("Break Block SFX") terrainData_Type[tilePointSet[2]][tilePointSet[1]] = 1 rpoint = (tilePointSet * 50) - 25 addparticle(rpoint, 0, 1) killedBlock = 0 case terrainRef[bType][5] of 1: 5: playerInventory[2] = playerInventory[2] - 1 if updateTextFields = 1 then member("Key Display").text = string(playerInventory[2]) end if locksOpened = locksOpened + 1 6: repeat with wCoin = 1 to 1 addPickup(1, 1, rpoint, point(random(7) - 4, -6 - random(12))) end repeat 7: repeat with wCoin = 1 to 1 addPickup(1, 2, rpoint, point(random(7) - 4, -6 - random(12))) end repeat 8: addPickup(1, 2, rpoint + point(15, 0), point(random(7) - 4, -6 - random(12))) addPickup(1, 2, rpoint + point(-15, 0), point(random(7) - 4, -6 - random(12))) addPickup(1, 2, rpoint + point(0, 0), point(random(7) - 4, -6 - random(12))) 9: repeat with wCoin = 1 to 1 addPickup(1, 3, rpoint, point(0, 0)) end repeat 12: addPickup(2, 1, rpoint, point(0, 0)) end case redrawTerrainPics() addScore(5) end if end on redrawTerrainPics global terrainSO, screenDimensions, screenTileSize, terrainData_Type, playerViewpoint, tilePointSet, animNumber, terrainRef tilePointSet = playerViewpoint / screenTileSize maxX = screenDimensions[1] maxY = screenDimensions[2] wTile = 0 repeat with whichY = 1 to maxY repeat with whichX = 1 to maxX wSprite = terrainSO + wTile bType = terrainData_Type[whichY + tilePointSet[2]][whichX + tilePointSet[1]] blockString = terrainRef[bType] if count(blockString[1]) = 1 then set the member of sprite wSprite to blockString[1][1] else if blockString[4] = 1 then frameNum = (animNumber / 3 mod count(blockString[1])) + 1 set the member of sprite wSprite to blockString[1][frameNum] else frameNum = (animNumber mod count(blockString[1])) + 1 set the member of sprite wSprite to blockString[1][frameNum] end if end if case blockString[3] of 0: sprite(wSprite).visible = 0 1: sprite(wSprite).locZ = 199 set the ink of sprite wSprite to 36 sprite(wSprite).visible = 1 2: sprite(wSprite).locZ = 201 set the ink of sprite wSprite to 36 sprite(wSprite).visible = 1 3: sprite(wSprite).locZ = 201 set the ink of sprite wSprite to 33 sprite(wSprite).visible = 1 end case wTile = wTile + 1 end repeat end repeat end